table of contents
KILLALL(1) | Comandos de usuário | KILLALL(1) |
NOME¶
killall - mata processos por nome
SINOPSE¶
killall [-Z, --context pattern]
[-e, --exact]
[-g, --process-group]
[-i, --interactive] [-n, --ns
PID] [-o, --older-than TIME]
[-q, --quiet] [-r, --regexp]
[-s, --signal
SIGNAL, -SIGNAL]
[-u, --user user]
[-v, --verbose] [-w, --wait]
[-y, --younger-than TIME]
[-I, --ignore-case]
[-V, --version] [--] name ...
killall -l
killall -V, --version
DESCRIÇÃO¶
killall envia um sinal para todos os processos que executam qualquer um dos comandos especificados. Se nenhum nome de sinal for especificado, SIGTERM será enviado.
Os sinais podem ser especificados pelo nome (por exemplo, -HUP ou -SIGHUP) ou por número (por exemplo, -1) ou pela opção -s.
Se o nome do comando não for uma expressão regular (opção -r) e contiver uma barra (/), os processos que executam aquele arquivo específico serão selecionados para eliminação, independente de seu nome.
killall retorna um código de retorno zero se pelo menos um processo foi eliminado para cada comando listado, ou nenhum comando foi listado e pelo menos um processo correspondeu aos critérios de pesquisa -u e -Z. killall retorna diferente de zero, caso contrário.
Um processo killall nunca se mata (mas pode matar outros processos killall).
OPÇÕES¶
- -e, --exact
- Requer uma correspondência exata para nomes muito longos. Se um nome de comando tiver mais de 15 caracteres, o nome completo pode não estar disponível (ou seja, foi trocado). Nesse caso, killall matará tudo o que corresponder aos primeiros 15 caracteres. Com -e, essas entradas são ignoradas. killall imprime uma mensagem para cada entrada ignorada se -v for especificado além de -e.
- -I, --ignore-case
- Faz correspondência de nomes de processo sem diferenciar maiusculização de minúsculo.
- -g, --process-group
- Mata o grupo de processos ao qual o processo pertence. O sinal de eliminação é enviado apenas uma vez por grupo, mesmo se vários processos pertencentes ao mesmo grupo de processos forem encontrados.
- -i, --interactive
- Pede confirmação interativamente antes de matar.
- -l, --list
- Lista todos os nomes de sinal conhecidos.
- -n, --ns
- Compara com o espaço de nomes do PID ao PID fornecido. O padrão é corresponder a todos os espaço de nomes.
- -o, --older-than
- Corresponde apenas aos processos que são mais antigos (iniciados antes) da hora especificada. O tempo é especificado como um flutuante e depois como uma unidade. As unidades são s,m,h,d,w,M,y para segundos, minutos, horas, dias, semanas, meses e anos, respectivamente.
- -q, --quiet
- Não reclama se nenhum processo tiver sido eliminado.
- -r, --regexp
- Interpreta o padrão do nome do processo como uma expressão regular estendida POSIX, por regex(3).
- -s, --signal, -SIGNAL
- Envia este sinal ao invés de SIGTERM.
- -u, --user
- Mata apenas os processos que o usuário especificado possui. Os nomes dos comandos são opcionais.
- -v, --verbose
- Relata se o sinal foi enviado com sucesso.
- -V, --version
- Exibe informação da versão.
- -w, --wait
- Aguarda todos os processos eliminados morrerem. killall verifica uma vez a cada segundo se algum dos processos eliminados ainda existe e só retorna se nenhum sobrar. Observe que killall pode esperar para sempre se o sinal for ignorado, não tiver efeito ou se o processo permanecer no estado zumbi.
- -y, --younger-than
- Corresponde apenas aos processos que são mais recentes (iniciados após) o tempo especificado. O tempo é especificado como um flutuante e depois como uma unidade. As unidades são s,m,h,d,w,M,y para segundos, minutos, horas, dias, semanas, meses e anos, respectivamente.
- -Z, --context
- Specify security context: kill only processes having security context that match with given extended regular expression pattern. Must precede other arguments on the command line. Command names are optional.
ARQUIVOS¶
- /proc
- local do sistema de arquivos proc
BUGS CONHECIDOS¶
Matar por arquivo só funciona para executáveis que são mantidos abertos durante a execução, ou seja, executáveis impuros não podem ser matados dessa maneira.
Esteja avisado que digitar killall nome pode não ter o efeito desejado em sistemas não Linux, especialmente quando feito por um usuário privilegiado.
killall -w não detecta se um processo desaparece e é substituído por um novo processo com o mesmo PID entre as varreduras.
Se os processos mudarem de nome, killall pode não ser capaz de correspondê-los corretamente.
killall tem um limite de nomes que podem ser especificados na linha de comando. Este número é o tamanho de um inteiro longo sem sinal multiplicado por 8. Para a maioria dos sistemas de 32 bits, o limite é 32 e, da mesma forma, para um sistema de 64 bits, o limite é geralmente 64.
VEJA TAMBÉM¶
kill(1), fuser(1), pgrep(1), pidof(1), pkill(1), ps(1), kill(2), regex(3).
2021-01-11 | psmisc |